The present invention relates to an online application processing system for performing application processing by gaining access to a host computer (also called a general-purpose or mainframe computer) via communication means. More particularly, the invention relates to an online application processing system utilizing easy-to-use graphical user interfaces (called GUIs) for application processing instead of conventional cumbersome screen interfaces made up mostly of characters and ruled lines.
Illustratively, Wall Data Inc. of the United States states that it has a host connectivity product called "RUMBA" provides program parts that may be used in conjunction with Visual Basic, a Windows application development tool from Microsoft. With RUMBA, users are said to be able to write in Visual Basic programs for accessing a host computer. In another example of the related art, a product called "EVB-SDK", a Visual Basic-compatible application development support kit from Chori Information System Co. of Japan, offers 10 Visual Basic-compatible program parts for communicative connections with a host computer as well as for key input control and key simulations.
In a further example of the related art, publications about a terminal message mapping support system called "XMAP2E2" from Hitachi, Ltd. of Japan state that the system permits easy development of an online application program for transmitting screen display information to terminals on the basis of screen definition information which defines field names, coordinates and data formats for displaying data on the screen. In a still further example, in a periodical "First Class", March/April, 1994, Vol. IV, Issue II (p. 10, p. 20) wrapping legacy applications are disclosed. In connection with this topic, the article discloses a concept of controlling old application programs via terminal interfaces.
Conventional online application programs are performed by a host computer that displays online application screens at a host terminal. These screens constitute a character-based user interface. Illustratively, when selecting one of a plurality of alternatives about any transaction through this interface, a user must input from a keyboard a code number corresponding to the desired alternative.
The character-based interface is lacking in screen display variations, thus it is hardly conducive to easy-to-understand grouping and displaying of data, such as the display of a highlighted indication of data portions in varying sizes in proportion to varying degrees of importance. By contrast, the GUI (graphical user interface) allows the user simply to click on any one of the multiple alternatives with a mouse for selection. The GUI also makes it easy, for example, to vary character size, enclose desired screen portions in a frame, and display pictures using image data.
In recent years, small computers such as so-called personal computers have dropped significantly in price so that they are more accessible than ever before. With their improved GUI capabilities, these computers provide users with better operability and more versatile expressions in display. Still, host computers have already accumulated hundreds of thousands of application programs, most of them having recourse to the character-based user interface for operation. Thus, technology is in demand which will enable these numerous application programs to be utilized with little modifications being made thereto through the use of a GUI providing the above-mentioned advantages.
To generate a program offering GUI capabilities while communicating with application programs on the host computer requires preparing two programs: a program for communicating with application programs on the host computer, and a program for constituting the GUI. The conventional techniques outlined above offer program parts facilitating generation of the program for accessing the host computer. Although such program parts makes it easy to prepare the program for communicating with the host computer, the program must be prepared manually in the conventional setup.
To provide users with user interfaces allowing them to access the host computer requires more processes: a process for receiving data from the host computer, for converting the received data to an appropriate format and for displaying the converted data; and a process for converting user-input data to an appropriate format and transmitting the converted data to the host computer. In the conventional setup, these processes must also be programmed manually.
Furthermore, typical online application programs are typically composed of tens to even hundreds of screens, and larger online application programs sometimes comprise even thousands of screens each. Besides the numerous screens involved, the contents of the communication between the host computer and the program for accessing it vary from one screen to another. The user interface also varies from screen to screen. This means that a program is needed for each of the screens involved. The labor required for preparing these programs is colossal. There has been no viable technique developed so far to prepare such programs automatically.
More specifically, although the above-described product "EVB-SDK" offers program parts that are convenient in creating user interfaces, manual work is still needed to arrange these program parts and to code procedures of exchange with other data. In addition, whereas the product requires the user to select appropriate user interface parts depending on the data format applicable to the host computer in question, it is difficult to make suitable choices for each of a plurality of screens involved.
The above-mentioned product "XMAP2E2" utilizes screen definition data in supporting the preparation of an application program to be run by the host computer. In this case, the process or apparatus for accessing the application program is restricted to the kind of access based on a fixed-function terminal or terminal protocols independent of the contents of the processing involved. The restriction makes it impossible to provide appropriate displays suitable for the contents of the application. Hence the difficulty in implementing beautiful, easy-to-use interfaces. Meanwhile, the application program performed by the host computer carries out a host terminal control process and an error checking process for screen input and output in addition to the core processes such as calculations and database updates. As a result, the program becomes so bulky that it is difficult subsequently to add more functions to or make functional changes in the program.
The concept discussed in the magazine "First Class" includes techniques of how to exchange data between a host computer and other computers. The concept is analogous in nature to that of conventional terminal emulators. Furthermore, no process or apparatus for creating specific programs is disclosed in the publication.